- 服务调度:服务发现、配置管理、弹性伸缩、故障恢复等
- 资源调度:对底层资源的调度使用,如计算资源、网络资源和存储资源等
- 流量调度:路由、负载均衡、流控、熔断等
- 数据调度:数据复本、数据一致性、分布式事务、分库、分表等
- 容错处理:隔离、幂等、重试、业务补偿、异步、降级等
- 自动化运维:持续集成、持续部署、全栈监控、调用链跟踪等
分布式架构入门
- Scalable Web Architecture and Distributed Systems 介绍大概的分布式架构是怎么来解决系统扩展性问题的粗略方法
- Scalability, Availability & Stability Patterns 在扩展性、可用性、稳定性等方面给一个非常大的架构设计视野和思想,可以感受一下大概的全景图
- System Design Primer 组织收集分布式系统的一些与扩展性相关的资源,帮助学习如何构建可扩展的架构
分布式理论
- An introduction to distributed systems 分布式系统的知识图谱
- Byzantine Generals Problem) 拜占庭容错算法,解决网络通信可靠但节点可能故障情况下一致性该如何达成的问题
- Dr.Dobb’s - The Byzantine Generals Problem
- The Byzantine Generals Problem
- Practicle Byzantine Fault Tolerance
- CAP 定理 分布式数据存储不可能同时满足以下三个条件:一致性(Consistency)、可用性(Availability)和 分区容忍(Partition tolerance)
- FLP impossibility 成功的共识算法会采用的解决问题的办法
- DLS 论文 学习容错的上限
- Fallacies of Distributed Computing 8 条荒谬的分布式假设
- 网络是稳定的
- 网络传输的延迟是零
- 网络的带宽是无穷大
- 网络是安全的
- 网络的拓扑不会改变
- 只有一个系统管理员
- 传输数据的成本为零
- 整个网络是同构的